'ues strict'
let products=[                //先添加一个数组
    {
        id:1,
        productName:'iPhone 13 Pro 256G 蓝色',
        price:8499,
        stockNum:500,
        supplier:'Apple'
    },
    {
        id:2,
        productName:'iPhone 13 Pro 256G 蓝色',
        price:8499,
        stockNum:500,
        supplier:'Apple'
    },
    {
        id:3,
        productName:'iPhone 13 Pro 256G 蓝色',
        price:8499,
        stockNum:500,
        supplier:'Apple'
    },
    {
        id:4,
        productName:'iPhone 13 Pro 256G 蓝色',
        price:8499,
        stockNum:500,
        supplier:'Apple'
    },
    {
        id:5,
        productName:'iPhone 13 Pro 256G 蓝色',
        price:8499,
        stockNum:500,
        supplier:'Apple'
    },
]

let fn_list=(ctx,next)=>{
    ctx.body=products;
}

/* let fn_getbyid = (ctx, next) => {
    let id = ctx.request.params.id;
    let filterList=products.filter(item=>{
        return item.id==id;     //这里不能用===，因为===是绝对相等，而item.id是纯数字，传入的参数id是一个字符串，所以用==大概相等
    })
    if(filterList.length>0){
        ctx.body = {
            code: 1000,
            data: filterList[0],
            msg: '获取指定商品成功'
        }
    }else{
        ctx.body = {
            code: 900,
            data: '',
            msg: '你查找的商品不存在'
        }
    }
}
let fn_post = (ctx, next) => {
    let obj = ctx.request.body;
    console.log(obj);
    obj.id = products[products.length - 1].id + 1;
    console.log(obj);
    products.push(obj);
    ctx.body = obj;
}
// 修改，根据指定id，修改指定的记录；如果没有找到id所代表的记录，则提示不存在
let fn_put = (ctx, next) => {
    // 获取id
    let id = ctx.request.params.id;
    // 类似post请求，获得传过来的参数
    let obj = ctx.request.body;
    // 模拟在数据库中查询指定记录
    let filterList = products.filter(item => {
        return item.id == id;
    })
    // 如果找到了对应的记录，则进行修改;否则提示查找的记录不存在
    if (filterList.length > 0) {
        let tmpObj = filterList[0];
        tmpObj.productName = obj.productName;
        tmpObj.price = obj.price;
        tmpObj.stockNum = obj.stock;
        tmpObj.supplier = obj.supplier;
        ctx.body={
            code:1000,
            data:tmpObj,// 返回修改成功以后的对象
            msg:'修改成功'
        }
    } else {
        ctx.body = {
            code: 900,
            data: '',
            msg: '你所需要修改的商品不存在'
        }
    }
}
let fn_delete = (ctx, next) => {

}
 */
module.exports={
    'get /product':fn_list,     //获取全部商品
    /* 'get /product/:id': fn_getbyid,   //获取指定商品
    'post /product': fn_post,    //新增产品
    'put /product/:id': fn_put,   //修改产品
    'delete product/:id': fn_delete      //删除产品   */    
}
